A computer network is a collection of computers and other hardware interconnected by communication channels that allow sharing of resources and information. Communication protocols define the rules and data formats for exchanging information in a computer network. Computer networks can be logically divided into subnetworks, sometimes called subnets. The subnets of a computer network, and the machines on the subnets, may all share the same hardware resources, but may have differ permissions and policies, depending on the subnet.